package com.blog.service;

import com.blog.domain.Blog;
import com.blog.domain.Type;
import com.blog.domain.User;

import java.util.List;
import java.util.Set;

/**
 * Spring service that handles CRUD requests for User entities
 * 
 */
public interface UserService {

	/**
	 * Return all User entity
	 * 
	 */
	public List<User> findAllUsers(Integer startResult, Integer maxRows);

	/**
	 * Save an existing User entity
	 * 
	 */
	public void saveUser(User user);

	/**
	 * Return a count of all User entity
	 * 
	 */
	public Integer countUsers();

	/**
	 */
	public User findUserByPrimaryKey(Integer id);

	/**
	 * Delete an existing Blog entity
	 * 
	 */
	public User deleteUserBlogs(Integer user_id, Integer related_blogs_id);

	/**
	 * Delete an existing User entity
	 * 
	 */
	public void deleteUser(User user_1);

	/**
	 * Save an existing Blog entity
	 * 
	 */
	public User saveUserBlogs(Integer id_1, Blog related_blogs);

	/**
	 * Load an existing User entity
	 * 
	 */
	public Set<User> loadUsers();

	/**
	 * Delete an existing Type entity
	 * 
	 */
	public User deleteUserTypes(Integer user_id_1, Integer related_types_id);

	/**
	 * Save an existing Type entity
	 * 
	 */
	public User saveUserTypes(Integer id_2, Type related_types);
}